package com.kingyun.gpsinspection.purificationservice.facade.service.jsm;

import com.kingyun.gpsinspection.purificationservice.facade.model.jsm.EmployeeVo;
import com.kingyun.gpsinspection.purificationservice.facade.model.jsm.Menu;
import com.kingyun.gpsinspection.purificationservice.facade.model.jsm.SystemPlatform;

import java.util.List;

/**
 * Created by huangxueqian on 2017/2/7/007.
 * 向外提供权限查询接口
 */
public interface OutPermissionService {
    /**
     * 获取登录子系统的一级菜单
     * @param systemCode 系统编码，
     * @param employeeVo  当前用户信息
     * @return
     */
    public List<Menu> getFirstNavPermission(String systemCode, EmployeeVo employeeVo, String pfToken) throws Exception;

    /**
     * @param systemCode 当前用户信息
     * @param menuId  根据一级菜单ID， 获取对应菜单权限
     * @return 返回一级菜单的二级菜单及其子菜单
     * @throws Exception
     */
    public List<Menu> getLeftMenuNavPermission(String systemCode, EmployeeVo employeeVo, String menuId, String pfToken) throws Exception;

    /**
     * 获取平台信息
     */
    List<SystemPlatform> selectSystemPlatform(String pfToken) throws Exception ;

    /**
     * @param url 根据url查询到一级菜单
     */
    Menu getRecordFirst(String url, String employeeId) throws Exception;


    public List<Menu> getAllMenuPermission(String pToken, String systemCode, EmployeeVo employeeVo) throws Exception;

    /**
     * 获取所有菜单
     * @param pToken
     * @param employeeVo
     * @return
     * @throws Exception
     */
    List<Menu> getAllMenu(String pToken,EmployeeVo employeeVo) throws Exception;
}
